home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Information / Digests / CSMP Digest / volume 1 / csmp-v1-221.txt < prev    next >
Encoding:
Text File  |  1994-12-08  |  40.4 KB  |  992 lines  |  [TEXT/R*ch]

  1. C.S.M.P. Digest             Fri, 04 Dec 92       Volume 1 : Issue 221
  2.  
  3. Today's Topics:
  4.  
  5.     Custom MDEF/Submenu woes..
  6.     Human Interface P's And Q's
  7.     Quickdraw crashes with simple MoveTo and LineTo
  8.     Copyright or look-and-feel of arcade games
  9.     How do I change the system font?
  10.  
  11.  
  12.  
  13. The Comp.Sys.Mac.Programmer Digest is moderated by Michael A. Kelly.
  14.  
  15. The digest is a collection of article threads from the internet newsgroup
  16. comp.sys.mac.programmer.  It is designed for people who read c.s.m.p. semi-
  17. regularly and want an archive of the discussions.  If you don't know what a
  18. newsgroup is, you probably don't have access to it.  Ask your systems
  19. administrator(s) for details.  You can post articles to any newsgroup by
  20. mailing your article to newsgroup@ucbvax.berkeley.edu.  So, to post an
  21. article to comp.sys.mac.programmer, you mail it to
  22. comp-sys-mac-programmer@ucbvax.berkeley.edu.  Note the '-' instead of '.'
  23. in the newsgroup name.
  24.  
  25. Each issue of the digest contains one or more sets of articles (called
  26. threads), with each set corresponding to a 'discussion' of a particular
  27. subject.  The articles are not edited; all articles included in this digest
  28. are in their original posted form (as received by our news server at
  29. cs.uoregon.edu).  Article threads are not added to the digest until the last
  30. article added to the thread is at least one month old (this is to ensure that
  31. the thread is dead before adding it to the digest).  Article threads that
  32. consist of only one message are generally not included in the digest.
  33.  
  34. The entire digest is available for anonymous ftp from ftp.cs.uoregon.edu
  35. [128.223.8.8] in the directory /pub/mac/csmp-digest.  Be sure to read the
  36. file /pub/mac/csmp-digest/README before downloading any files.  The most
  37. recent issues are available from sumex-aim.stanford.edu [36.44.0.6] in the
  38. directory /info-mac/digest/csmp.  If you don't have ftp capability, the sumex
  39. archive has a mail server; send a message with the text '$MACarch help' (no
  40. quotes) to LISTSERV@ricevm1.rice.edu for more information.
  41.  
  42. The digest is also available via email.  Just send a note saying that you
  43. want to be on the digest mailing list to mkelly@cs.uoregon.edu, and you will
  44. automatically receive each new issue as it is created.  Sorry, back issues
  45. are not available through the mailing list.
  46.  
  47. Send administrative mail to mkelly@cs.uoregon.edu.
  48.  
  49.  
  50. -------------------------------------------------------
  51.  
  52. From: Randy DeRuiter
  53. Subject: Custom MDEF/Submenu woes..
  54. Date: 1 Nov 92 18:58:30 GMT
  55. Organization: TheNews
  56.  
  57.  
  58.  Thanks for all the help I've received on writing a custom MDEF, especially the
  59. help from Ramon Felciano.  I still have a nagging question which I hope to
  60. resolve:  
  61.  
  62. Is there any way to control the popup location of an attached submenu?  I've
  63. found that if you use a nonstandard item height in your menu ( anything other
  64. than 16 pixels high ) attached submenus do not pop up consistently.  The menu
  65. manager (or MBDF, I'm not sure what's in control here) clearly looks at the
  66. current mouse location when popping up the submenu, and my guess is that it
  67. does some simple integer arithmetic assuming an itemheight of 16 to get the
  68. best popup location.  To my surprise, the mPopUpmsg defined in IM V is not used
  69. for this process, so I don't have an easy way to adjust things with my custom
  70. MDEF.  Any ideas?
  71.  
  72. Please respond directly if this is not worthy of net discussion.
  73.  
  74. Thanks,
  75.  
  76. Randy DeRuiter   dedrad@arco.com
  77.  
  78. +++++++++++++++++++++++++++
  79.  
  80. From: keith@taligent.com (Keith Rollin)
  81. Date: 2 Nov 92 03:12:45 GMT
  82. Organization: Taligent
  83.  
  84. In article <1992Nov1.185830.18508@Arco.COM>, Randy DeRuiter wrote:
  85. > Is there any way to control the popup location of an attached submenu?  I've
  86. > found that if you use a nonstandard item height in your menu ( anything other
  87. > than 16 pixels high ) attached submenus do not pop up consistently.  The menu
  88. > manager (or MBDF, I'm not sure what's in control here) clearly looks at the
  89. > current mouse location when popping up the submenu, and my guess is that it
  90. > does some simple integer arithmetic assuming an itemheight of 16 to get the
  91. > best popup location.  To my surprise, the mPopUpmsg defined in IM V is not used
  92. > for this process, so I don't have an easy way to adjust things with my custom
  93. > MDEF.  Any ideas?
  94.  
  95. I'm not sure if there is a good solution for you. I recently gave the
  96. standard MBDF a good examination, and discovered that the code that
  97. calculates the various menu item line heights (either 16 or 32) is
  98. duplicated in the standard MDEF and MBDF. This means that if you change the
  99. line heights in your MDEF, the MBDF still assumes normal line heights. This
  100. is bad since it is the MBDF that determines where to position the
  101. hierarchical.
  102.  
  103. The cleanest and hardest solution would be to re-write the standard MBDF. A
  104. trickier solution, if you have MPW, is to use the information in Private.a
  105. (search for "mbCustomStorage" to get to the private data structures used by
  106. the MBDF). The handle to this private information is stored in the
  107. low-memory location MBSaveLoc. This information includes the calculated
  108. rectangles for all menus on the screen. Perhaps you can sneak in at some
  109. time and tweak them to what you need.
  110.  
  111. - -----
  112. Keith Rollin
  113. Phantom Programmer
  114. Taligent, Inc.
  115.  
  116. ---------------------------
  117.  
  118. From: orpheus@reed.edu (P. Hawthorne)
  119. Subject: Human Interface P's And Q's
  120. Date: 2 Nov 92 11:02:15 GMT
  121. Organization: Reed College, Portland OR
  122.  
  123.  
  124.     The new Finder has changed the meaning of the zoomed in state. When
  125. you zoom in, the window zooms to a size just large enough to show the
  126. contents without overflowing the screen. Should new applications adopt
  127. the window zooming conventions of the Finder for document windows?
  128.  
  129.     As a rule, when the user chooses a command from a menu that brings up
  130. a modal dialog, the menu stays inverted until the dialog is dismissed.
  131. However, that practice seems to be on the way out. Should new
  132. applications uninvert menus once a dialog has come up? If so, should this
  133. be done for the standard file and print dialogs as well?
  134.  
  135.     Is a standard way of telling the user how much temporary memory is
  136. being consumed by the application?
  137.  
  138.     A good many of the new control panels from Apple use Geneva for
  139. things that would once only have been done with Chicago. Should the rest
  140. of us ditch Chicago for dialogs or is this just for control panels?
  141.  
  142.     On a related note, many applications have grouped dialog items within
  143. dark rounded corner boxes. Apple seems to be enclosing groups of items
  144. within boxes, some dimmed and some heavy. In some layouts, groups are
  145. separated with dimmed lines. Is this the Party line?
  146.  
  147.     Is the way that the new Finder displays folder windows in list form
  148. the official look and feel for outline data?
  149.  
  150.     Should programmers specifically try to harmonize their their menu
  151. bars so that only the last couple of menus change titles when switching
  152. between the Finder and the app, so as to make the session appear
  153. seamless? Or would that just be daffy?
  154.  
  155.     Theus (orpheus@reed.edu)
  156.  
  157. +++++++++++++++++++++++++++
  158.  
  159. From: k044477@hobbes.kzoo.edu (Jamie R. McCarthy)
  160. Date: 2 Nov 92 11:27:22 GMT
  161. Organization: Kalamazoo College
  162.  
  163. orpheus@reed.edu (P. Hawthorne) writes:
  164. >
  165. >    The new Finder has changed the meaning of the zoomed in state. When
  166. >you zoom in, the window zooms to a size just large enough to show the
  167. >contents without overflowing the screen. Should new applications adopt
  168. >the window zooming conventions of the Finder for document windows?
  169.  
  170. This is the Finder being polite, not the Finder laying down gospel.  It
  171. makes sense for the Finder because it frequently has many windows open,
  172. and things frequently get dragged in, out, and between them.  Do what
  173. makes sense for your documents.
  174.  
  175. >    As a rule, when the user chooses a command from a menu that brings up
  176. >a modal dialog, the menu stays inverted until the dialog is dismissed.
  177. >However, that practice seems to be on the way out. Should new
  178. >applications uninvert menus once a dialog has come up? If so, should this
  179. >be done for the standard file and print dialogs as well?
  180.  
  181. I would say:  if the Edit menu is available, yes;  otherwise no.  If you
  182. don't agree with me:  that's OK, I probably won't even notice.
  183.  
  184. >    Is [there] a standard way of telling the user how much temporary memory
  185. >is being consumed by the application?
  186.  
  187. OK, here's my suggestion for a standard.  Put a menu item somewhere
  188. called "Non-Program Memory";  when selected, it checks itself and puts
  189. up a floating window that says "Non-program memory in use:  123K".
  190. (Is there an official name for it?  "Multifinder memory" is right out,
  191. and "temporary memory" is a very misleading name, now.)  Whenever the
  192. program allocates temp memory, and the window is not already visible,
  193. and there was no temp mem allocated before, make the window visible.
  194.  
  195. A help balloon would of course explain what the thing was.
  196.  
  197. >    A good many of the new control panels from Apple use Geneva for
  198. >things that would once only have been done with Chicago. Should the rest
  199. >of us ditch Chicago for dialogs or is this just for control panels?
  200.  
  201. Many of the rest of us already have.  The rest of the rest of us are
  202. free to do whatever makes sense for the interface in question.  In
  203. deference to my bifocal-wearing friends who will soon purchase a
  204. Classic II, I intend to use Chicago whenever possible.  (Going back and
  205. forth between bifocal and normal lenses gives you a stiff neck, I'm
  206. told.)
  207. - -- 
  208.  Jamie McCarthy      Internet: k044477@kzoo.edu      AppleLink: j.mccarthy
  209.  "I don't think we should have to have them wandering the streets
  210.   frightening women and people."                            - Pat Buchanan
  211.  
  212. +++++++++++++++++++++++++++
  213.  
  214. From: lsr@taligent.com (Larry Rosenstein)
  215. Date: 2 Nov 92 18:37:16 GMT
  216. Organization: Taligent, Inc.
  217.  
  218. In article <1992Nov2.110215.9032@reed.edu>, orpheus@reed.edu (P. Hawthorne)
  219. wrote:
  220. >     The new Finder has changed the meaning of the zoomed in state. When
  221. > you zoom in, the window zooms to a size just large enough to show the
  222. > contents without overflowing the screen. Should new applications adopt
  223.  
  224. I think the guideline has always been to zoom the window to the largest
  225. size that makes sense, rather than just zooming to the size of the screen. 
  226. If your document has a limit in one or both directions, then you shouldn't
  227. zoom (much) beyond that limit.
  228.  
  229. >     As a rule, when the user chooses a command from a menu that brings up
  230. > a modal dialog, the menu stays inverted until the dialog is dismissed.
  231. > However, that practice seems to be on the way out. Should new
  232.  
  233. You probable should uninvert the menu.  In System 7, the user should be
  234. able to toggle the state of Balloon Help, and it would be nice to implement
  235. the edit menu.
  236.  
  237. > things that would once only have been done with Chicago. Should the rest
  238. > of us ditch Chicago for dialogs or is this just for control panels?
  239.  
  240. Chicago is supposed to be the font the system uses to "tell" things to the
  241. user.  Geneval might be used in control panels just be cause of the size
  242. contraints.  Chicago also has the property that it can be dimmed using a
  243. gray pattern and still be readable.
  244.  
  245. >     Should programmers specifically try to harmonize their their menu
  246. > bars so that only the last couple of menus change titles when switching
  247.  
  248. The 1st 3 menus should be the same (most of the time); but in general, I
  249. would do what makes the most sense for your app.
  250.  
  251. Larry Rosenstein
  252. Taligent, Inc.
  253.  
  254. lsr@taligent.com
  255.  
  256. +++++++++++++++++++++++++++
  257.  
  258. From: leonardr@netcom.com (Leonard Rosenthol)
  259. Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
  260. Date: Mon, 2 Nov 1992 18:46:34 GMT
  261.  
  262. Here is my two cents on these questions...
  263.  
  264. In article <1992Nov2.110215.9032@reed.edu> orpheus@reed.edu (P. Hawthorne) writes:
  265. >    The new Finder has changed the meaning of the zoomed in state. When
  266. >you zoom in, the window zooms to a size just large enough to show the
  267. >contents without overflowing the screen. Should new applications adopt
  268. >the window zooming conventions of the Finder for document windows?
  269. >
  270.     YES!  This is described in a Human Interface Note (#7 - Who's Zooming
  271. Who).
  272.  
  273. >    As a rule, when the user chooses a command from a menu that brings up
  274. >a modal dialog, the menu stays inverted until the dialog is dismissed.
  275. >However, that practice seems to be on the way out. Should new
  276. >applications uninvert menus once a dialog has come up? If so, should this
  277. >be done for the standard file and print dialogs as well?
  278. >
  279.     I would say to uninvert the menu before getting to the dialog. The
  280. reason being that under System 7 the menu bar is active so as to allow
  281. the user to cut/copy/paste in edit fields.  You would not want an inverted
  282. menu in this case.
  283.  
  284. >    Is a standard way of telling the user how much temporary memory is
  285. >being consumed by the application?
  286. >
  287.     No.  I am not sure that this would be appropriate either...
  288.  
  289. >    A good many of the new control panels from Apple use Geneva for
  290. >things that would once only have been done with Chicago. Should the rest
  291. >of us ditch Chicago for dialogs or is this just for control panels?
  292. >
  293.     Actually, you should use "applicationFont" as returned from the
  294. GetAppFont() call.  This will give you improved international compatibility.
  295.  
  296. >    On a related note, many applications have grouped dialog items within
  297. >dark rounded corner boxes. Apple seems to be enclosing groups of items
  298. >within boxes, some dimmed and some heavy. In some layouts, groups are
  299. >separated with dimmed lines. Is this the Party line?
  300. >
  301.     I don't believe that there is any "party line" on this one.  I like
  302. to use either dimmed/dashed boxes or dimmed/dashed lines to separate groups
  303. of items.  This makes a dialog look nicely layed out without overwhelming it
  304. with solid lines & shadowed boxes.
  305.  
  306. >    Is the way that the new Finder displays folder windows in list form
  307. >the official look and feel for outline data?
  308. >
  309.     I don't think there is any official word here, but it does look
  310. nice and many application vendors have adopted it for their own apps.
  311.  
  312. >    Should programmers specifically try to harmonize their their menu
  313. >bars so that only the last couple of menus change titles when switching
  314. >between the Finder and the app, so as to make the session appear
  315. >seamless? Or would that just be daffy?
  316. >
  317.     Your menus - do what you want with them (within reason ;).
  318.  
  319. - -- 
  320. - -----------------------------------------------------------------------------
  321. Leonard Rosenthol            Internet:     leonardr@netcom.com
  322. Director of Advanced Technology        AppleLink:    MACgician
  323. Aladdin Systems, Inc.            GEnie:        MACgician
  324.  
  325.  
  326. +++++++++++++++++++++++++++
  327.  
  328. From: sho@bohr.physics.purdue.edu (Sho Kuwamoto)
  329. Date: 2 Nov 92 19:37:25 GMT
  330. Organization: Purdue University Physics Department
  331.  
  332. lsr@taligent.com (Larry Rosenstein) writes:
  333. >In article <1992Nov2.110215.9032@reed.edu>, orpheus@reed.edu (P. Hawthorne)
  334. >wrote:
  335. >> 
  336. >>     The new Finder has changed the meaning of the zoomed in state. [...]
  337. >
  338. >I think the guideline has always been to zoom the window to the largest
  339. >size that makes sense, rather than just zooming to the size of the screen. 
  340.  
  341. IM VI 2-23 gives the Apple party line, which says:
  342.   A click in the zoom box toggles a window between two
  343.   states, the user state and the standard state... a
  344.   window's standard state definition is described as
  345.   generally the full screen, or close to it...
  346.  
  347.   But Macintosh monitors now come in all shapes, sizes, and
  348.   configurations, so applications should never simply assume
  349.   that the standard state should be as large as the screen...
  350.  
  351. The section goes on to describe the new rules for zooming
  352. windows.  I've written a TCL class to do proper window
  353. zooming, and it takes a couple of pages of code to get all
  354. the nit-picky details right.  You have to check to see which
  355. monitor contains the largest portion of the window, figure
  356. out if the desired standard state will fit on the monitor,
  357. etc., etc.  *sigh*
  358.  
  359. >>     As a rule, when the user chooses a command from a menu that brings up
  360. >> a modal dialog, the menu stays inverted until the dialog is dismissed.
  361. >> However, that practice seems to be on the way out. [...]
  362. >
  363. >You probable should uninvert the menu.  In System 7, the user should be
  364. >able to toggle the state of Balloon Help, and it would be nice to implement
  365. >the edit menu.
  366.  
  367. Agreed.  However, I'd like to add one point.  You *should*
  368. use movable modal dialog boxes, and you *should* allow the
  369. user to access the ballon help and application menus (as
  370. well as the edit menu?) but if you aren't going to allow the
  371. user to make menu selections, you should leave the menu
  372. inverted. 
  373.  
  374. - -Sho
  375. - --
  376. sho@physics.purdue.edu
  377.  
  378. ---------------------------
  379.  
  380. From: jmunkki@vipunen.hut.fi (Juri Munkki)
  381. Subject: Quickdraw crashes with simple MoveTo and LineTo
  382. Date: 31 Oct 92 09:41:31 GMT
  383. Organization: Helsinki University of Technology
  384.  
  385. I'm writing this 3D animation program and in the process of testing the
  386. transformation routines, I decided to use QuickDraw instead of my own
  387. line drawing routines, because I figured it would be one less thing to
  388. test...
  389.  
  390. If I moved the object really close, the machine would crash. After an
  391. hour or two of looking for bad handles and such, I narrowed the crashing
  392. problem down to the folloing program:
  393.  
  394. void    main()
  395. {
  396.     Rect    myRect={40,20,200,600};
  397.     
  398.     InitGraf(&thePort);
  399.     InitCursor();
  400.     InitFonts();
  401.     InitWindows();
  402.     InitMenus();
  403.     TEInit();
  404.     InitDialogs(0L);
  405.     InitCursor();
  406.     MaxApplZone();
  407.  
  408.     SetPort(NewWindow(0,&myRect,"\pTesting",TRUE,0,(WindowPtr)-1,FALSE,0));
  409.     
  410.     MoveTo(98,6674);
  411.     LineTo(37,-29103);
  412. }
  413.  
  414. When it reaches the LineTo, it crashes. I seem to remember something about
  415. QuickDraw not performing well on tall vertical lines, but IMO, it shouldn't
  416. crash with heap/stack collision.
  417.  
  418. I'm using a PB140 8/40 with System 7.01* with a number of system extensions.
  419. I'm including a binary so that you can check if your system crashes as well.
  420.  
  421. - --
  422.   Juri Munkki                           Windsurf: fast sailing
  423.  jmunkki@hut.fi                          Macintosh: fast software
  424.  
  425. (This file must be converted with BinHex 4.0)
  426.  
  427. - -- 
  428.   Juri Munkki                           Windsurf: fast sailing
  429.  jmunkki@hut.fi                          Macintosh: fast software
  430.  
  431. +++++++++++++++++++++++++++
  432.  
  433. From: ericsc@microsoft.com (Eric Schlegel)
  434. Date: 2 Nov 92 16:39:58 GMT
  435. Organization: Microsoft Corporation
  436.  
  437. In article <1992Oct31.094131.10827@nntp.hut.fi> jmunkki@vipunen.hut.fi (Juri Munkki) writes:
  438. >If I moved the object really close, the machine would crash. After an
  439. >hour or two of looking for bad handles and such, I narrowed the crashing
  440. >problem down to the folloing program:
  441. >
  442. >void    main()
  443. >{
  444. >    Rect    myRect={40,20,200,600};
  445. >    <...>
  446. >    SetPort(NewWindow(0,&myRect,"\pTesting",TRUE,0,(WindowPtr)-1,FALSE,0));
  447. >    
  448. >    MoveTo(98,6674);
  449. >    LineTo(37,-29103);
  450. >}
  451. >
  452. >When it reaches the LineTo, it crashes. I seem to remember something about
  453. >QuickDraw not performing well on tall vertical lines, but IMO, it shouldn't
  454. >crash with heap/stack collision.
  455. >
  456. >I'm using a PB140 8/40 with System 7.01* with a number of system extensions.
  457.  
  458. You're not imagining things. From the Basic QD Q&As Tech Note, Sept. 92:
  459.  
  460. Macintosh QuickDraw LineTo bug and workaround
  461. Written:    4/23/92
  462. Last reviewed:    7/13/92
  463.  
  464. Our zooming function crashes into flames when we pass valid
  465. coordinate values to LineTo, as in the following example:
  466.  
  467.     SetPort(myPort);
  468.     MoveTo(154,31619);
  469.     LineTo(74, -31742); (* You are dead! *)
  470.  
  471. What can we do to avoid LineTo crashes like this?
  472. ___
  473.  
  474. The QuickDraw Engineering group is aware of the problem you
  475. described. The bug probably is going to be fixed in the next
  476. release that includes bug fixes. Given that waiting for a
  477. system solution may demand more patience than is reasonable,
  478. you may want to consider including in your software some form
  479. of workaround that will prevent your users from crashing every
  480. time an operation takes the software to the limits of QuickDraw.
  481.  
  482. One way to approach this problem is to replace the lineProc
  483. bottleneck. All you need to do is to check the distance between
  484. the current pen position and the lineUs end, and when the 
  485. distance becomes too big (letUs say more than 32000) your 
  486. procedure will call StdLine a couple of times, splitting the
  487. operation in two.
  488.  
  489. Replacing the bottlenecks is a very straightforward operation
  490. (which you are probably already using) and in most of the
  491. cases will only result in another level of indirection into
  492. StdLine but that will prevent your program from calling 
  493. QuickDraw with parameters that are guaranteed to cause crashes.
  494.  
  495. - -eric
  496. - ------
  497. My opinions, not Microsoft's.
  498.  
  499. ---------------------------
  500.  
  501. From: mkelly@mystix.cs.uoregon.edu (Michael A. Kelly)
  502. Subject: Copyright or look-and-feel of arcade games
  503. Organization: University of Oregon Computer and Information Sciences Dept.
  504. Date: Fri, 30 Oct 1992 03:49:37 GMT
  505.  
  506. In article <1992Oct30.004222.29963@u.washington.edu> tzs@stein.u.washington.edu (Tim Smith) writes:
  507. >mkelly@mystix.cs.uoregon.edu (Michael A. Kelly) writes:
  508. >
  509. >So you can't just say what you have done is "like the difference" between
  510. >Asteriods and Blasteroids.  Copyright protects expression of ideas, rather
  511. >than ideas themselves.  This means that if something is required to express
  512. >an idea, copyright can't protect it.  In particular, copyright can't
  513. >protect the idea of a "shoot rocks in space" game.  The court decided
  514. >that any "shoot rocks in space" game would include Asteroids, and so
  515. >there could be no copyright protection.
  516. >
  517. >On the other hand, "run around a maze avoiding enemies" is a broader
  518. >idea.  There is room for more variation in how that idea is expressed,
  519. >and K. C. Munchkin was too close to PAC-MAN.
  520. >
  521. >Note the result: a near exact clone of Asteroids was OK, but something that
  522. >had several differences from PAC-MAN wasn't OK.  I don't think you will be
  523. >able to get a good answer in your case without divulging details of your
  524. >game.
  525.  
  526. OK.  The specific part of our game that we're worried about is:
  527.  
  528. There is an enemy base/fortress/castle (hint hint)/mother ship which is
  529. surrounded by three concentric roughly circular (regular n-sided polygons)
  530. rings/shields.  The rings spin, with the outer and inner rings spinning the
  531. same direction and the middle ring spinning the opposite direction.  The
  532. good guy has to shoot out segments of the rings so that he has a clear
  533. shot at the enemy base when the holes in each ring line up.  The enemy base
  534. can shoot back, also only when the holes in the rings line up.  The base
  535. shoots huge plasma balls like in the first Star Trek movie.
  536.  
  537. That is what is the same in both the original game and our game.  Here are
  538. some differences:
  539.  
  540. In the original game, the base & rings were static in the center of the
  541. screen, and the good guy flew his ship around the base, with his flight
  542. wrapping around when he flew off the screen.  In our game, the base stays
  543. in one spot in the world/galaxy, but the galaxy is much bigger than the
  544. screen, so the base could be anywhere on the screen or not on the screen
  545. at all.  Here's one important difference between the two: there is no
  546. notion of the good guy's flight wrapping around on the screen.  The wrapping
  547. was very important in the original game; the enemy base could only shoot
  548. in the direction it was pointing, so the good guy could sit close to the edge
  549. of the screen and fire away from the castle (oops, I mean base), hitting
  550. it from behind, and then thrust forward a bit to the other side of the
  551. screen when the base was aiming at the ship, thus avoiding attack from the
  552. base while whaling on it.  There is no way to do that in our game.
  553.  
  554. There are no bad guys in the original game (I think, although my partner
  555. thinks that there was).  There are quite a few in our game, with lots of
  556. variation in strength and strategy, plus 'yummies' and 'space garbage' and
  557. asteroids and such floating about in space.  And the good guy's ship is
  558. a lot more complicated than the original.
  559.  
  560. We've basically taken a simple ten year old video game and extended it
  561. tremendously.  I consider the original game inspiration, but others may
  562. consider it more than that.  I don't want to get sued.  But I don't want
  563. to cause myself any unnecessary legal hassles either.  If it isn't possible
  564. for the makers of the original game to win a lawsuit against us, I'd
  565. rather not go out of my way to bring the game to their attention.
  566.  
  567. So it sounds like our game vs. the original would probably go the way of
  568. K.C. Munchkin vs. PacMan.  What do you think?
  569.  
  570. BTW, what happens if that company isn't around any more?
  571.  
  572. Thanks for your help,
  573.  
  574. Mike.
  575. - -- 
  576. _____________________________________________________________________________
  577. Michael A. Kelly                                               Senior Partner
  578. mkelly@cs.uoregon.edu                                      High Risk Ventures
  579. _____________________________________________________________________________
  580.  
  581. +++++++++++++++++++++++++++
  582.  
  583. From: nhaldar@magnus.acs.ohio-state.edu (Neil A Haldar)
  584. Date: 30 Oct 92 15:12:27 GMT
  585. Organization: The Ohio State University
  586.  
  587. Okay... here's where a good weekend in the library helps out.  You *should* 
  588. know who the original manufacturer of the game is.  Go to the largest library 
  589. near you... and go look them up... Grab a copy of their D&B (Dunn and 
  590. Bradstreet[correct me if I'm wrong]), which will tell you their current 
  591. financial situation, assuming their a publicly-held company.
  592.  
  593. Next, I'd go look up on the CD-ROM database (for that's what's available here) 
  594. what copyrights, trademarks, patants, and other legal ownership they still 
  595. retain... this should be all inclusive, and include all of their filings 
  596. they've made with various federal offices.
  597.  
  598. Then... see if those copyrights/trademarks/patents are still in effect... I 
  599. don't remember what the law is, but I believe a patent is 7 years and a 
  600. copyright is 20 or so; and these of course can be extended.
  601.  
  602. This should tell you LOTS about this company and how their marks are legally 
  603. protected.  Patents/copyrights are considered a form of ownership, and the 
  604. original company could easily sue you if they still have a foot to stand on or 
  605. if they still exist.
  606.  
  607. Just like I said in my first posting... get a competent lawyer.  ;)
  608.  
  609. - -Neil
  610. - -- 
  611. *>  Neil Haldar                                                              <*
  612. *>  nhaldar@magnus.acs.ohio-state.edu                                        <*
  613. *>  neilh@well.sf.ca.us                                                      <*
  614. *>  364 West Lane Ave #225, Cols., OH 43201   614.299.8529                   <*
  615.  
  616. +++++++++++++++++++++++++++
  617.  
  618. From: rjacks@austlcm.sps.mot.com (rodney jacks)
  619. Organization: Motorola Inc, Austin, Texas
  620. Date: Fri, 30 Oct 1992 16:59:52 GMT
  621.  
  622. In article <1992Oct30.034937.16451@cs.uoregon.edu> mkelly@mystix.cs.uoregon.edu (Michael A. Kelly) writes:
  623. >In article <1992Oct30.004222.29963@u.washington.edu> tzs@stein.u.washington.edu (Tim Smith) writes:
  624. >>mkelly@mystix.cs.uoregon.edu (Michael A. Kelly) writes:
  625. >>
  626. >>So you can't just say what you have done is "like the difference" between
  627. >>Asteriods and Blasteroids.  Copyright protects expression of ideas, rather
  628. >>than ideas themselves.  This means that if something is required to express
  629. >>an idea, copyright can't protect it.  In particular, copyright can't
  630. >>protect the idea of a "shoot rocks in space" game.  The court decided
  631. >>that any "shoot rocks in space" game would include Asteroids, and so
  632. >>there could be no copyright protection.
  633. >>
  634. >>On the other hand, "run around a maze avoiding enemies" is a broader
  635. >>idea.  There is room for more variation in how that idea is expressed,
  636. >>and K. C. Munchkin was too close to PAC-MAN.
  637. >>
  638. >>Note the result: a near exact clone of Asteroids was OK, but something that
  639. >>had several differences from PAC-MAN wasn't OK.  I don't think you will be
  640. >>able to get a good answer in your case without divulging details of your
  641. >>game.
  642. >
  643. >OK.  The specific part of our game that we're worried about is:
  644. >
  645. >There is an enemy base/fortress/castle (hint hint)/mother ship which is
  646. >surrounded by three concentric roughly circular (regular n-sided polygons)
  647. >rings/shields.  The rings spin, with the outer and inner rings spinning the
  648. >same direction and the middle ring spinning the opposite direction.  The
  649. >good guy has to shoot out segments of the rings so that he has a clear
  650. >shot at the enemy base when the holes in each ring line up.  The enemy base
  651. >can shoot back, also only when the holes in the rings line up.  The base
  652. >shoots huge plasma balls like in the first Star Trek movie.
  653. >
  654. >That is what is the same in both the original game and our game.  Here are
  655. >some differences:
  656. >
  657. >In the original game, the base & rings were static in the center of the
  658. >screen, and the good guy flew his ship around the base, with his flight
  659. >wrapping around when he flew off the screen.  In our game, the base stays
  660. >in one spot in the world/galaxy, but the galaxy is much bigger than the
  661. >screen, so the base could be anywhere on the screen or not on the screen
  662. >at all.  Here's one important difference between the two: there is no
  663. >notion of the good guy's flight wrapping around on the screen.  The wrapping
  664. >was very important in the original game; the enemy base could only shoot
  665. >in the direction it was pointing, so the good guy could sit close to the edge
  666. >of the screen and fire away from the castle (oops, I mean base), hitting
  667. >it from behind, and then thrust forward a bit to the other side of the
  668. >screen when the base was aiming at the ship, thus avoiding attack from the
  669. >base while whaling on it.  There is no way to do that in our game.
  670. >
  671. >There are no bad guys in the original game (I think, although my partner
  672. >thinks that there was).  There are quite a few in our game, with lots of
  673. >variation in strength and strategy, plus 'yummies' and 'space garbage' and
  674. >asteroids and such floating about in space.  And the good guy's ship is
  675. >a lot more complicated than the original.
  676. >
  677. >We've basically taken a simple ten year old video game and extended it
  678. >tremendously.  I consider the original game inspiration, but others may
  679. >consider it more than that.  I don't want to get sued.  But I don't want
  680. >to cause myself any unnecessary legal hassles either.  If it isn't possible
  681. >for the makers of the original game to win a lawsuit against us, I'd
  682. >rather not go out of my way to bring the game to their attention.
  683. >
  684. >So it sounds like our game vs. the original would probably go the way of
  685. >K.C. Munchkin vs. PacMan.  What do you think?
  686. >
  687. >BTW, what happens if that company isn't around any more?
  688. >
  689. >Thanks for your help,
  690. >
  691. >Mike.
  692. >-- 
  693. >_____________________________________________________________________________
  694. >Michael A. Kelly                                               Senior Partner
  695. >mkelly@cs.uoregon.edu                                      High Risk Ventures
  696. >_____________________________________________________________________________
  697.  
  698. My guess is that as long as you don't copy the artwork or sounds from 
  699. Star Castle then you're probably safe.  You can probably use the basic 
  700. premise of the game safely.  But then I'm no lawyer :-)
  701.  
  702. - -Rodney
  703. rjacks@austlcm.sps.mot.com
  704.  
  705. +++++++++++++++++++++++++++
  706.  
  707. From: jsp@uts.amdahl.com (James Preston)
  708. Date: 30 Oct 92 18:04:32 GMT
  709. Organization: Amdahl Corporation, Sunnyvale CA
  710.  
  711. mkelly@mystix.cs.uoregon.edu (Michael A. Kelly) writes:
  712.  
  713. }There are no bad guys in the original game (I think, although my partner
  714. }thinks that there was).  There are quite a few in our game, with lots of
  715. }variation in strength and strategy
  716.  
  717. If by "bad guys" you mean enemy ships other than the big mother, then there
  718. definitely were bad guys in the original arcade game.  They took the form
  719. of a swarm of little tiny "ships" that would start following your ship
  720. around.
  721.  
  722. Are you planning on this being a commercial game or shareware?  In either
  723. case, I look forward to it.  Be sure to let the mac newsgroups know when
  724. it's released.
  725.  
  726. - --James Preston
  727.  
  728. +++++++++++++++++++++++++++
  729.  
  730. From: tjc50@juts.ccc.amdahl.com (Terry Carroll)
  731. Date: 30 Oct 92 18:30:10 GMT
  732. Organization: Amdahl Corporation
  733.  
  734. In article <1992Oct30.151227.13417@magnus.acs.ohio-state.edu>, 
  735. nhaldar@magnus.acs.ohio-state.edu (Neil A Haldar) writes:
  736. > Then... see if those copyrights/trademarks/patents are still in effect... I 
  737. > don't remember what the law is, but I believe a patent is 7 years and a 
  738. > copyright is 20 or so; and these of course can be extended.
  739.  
  740. A patent duration is 17 years, not subject to renewal (Although, I believe, 
  741. maintenence fees must be paid, or the patent lapses, which is similar in 
  742. effect to a shorter duration, with the maintenence fees serving to "renew" 
  743. for up to the full term of 17 years).  Sorry no cite available, this is from 
  744. memory, and if incorrect, I hope someone will post the correct information.
  745.  
  746. For works created after 1/1/1978, copyright is significantly longer than 20 
  747. years.  It is the life of the author plus 50 years for most works, and is 75 
  748. years for works made for hire, anonymous works, and pseudonymous works.  
  749. There is no longer any renewal.  17 USC 302.
  750.  
  751. For works created before 1/1/78, it's more complicated, but it effectively 
  752. works out to 75 years.  See 17 USC 303 and 304.
  753.  
  754. Terry Carroll - tjc50@juts.ccc.amdahl.com - 408/992-2152
  755. The opinions presented above are not necessarily those of a sound mind.
  756.  
  757. +++++++++++++++++++++++++++
  758.  
  759. From: mkelly@mystix.cs.uoregon.edu (Michael A. Kelly)
  760. Organization: High Risk Ventures
  761. Date: Fri, 30 Oct 1992 23:34:50 GMT
  762.  
  763. In article <b8Mh03hvb6RF00@amdahl.uts.amdahl.com> jsp@pls.amdahl.com writes:
  764. >
  765. >Are you planning on this being a commercial game or shareware?
  766.  
  767. Sorry, I should I mentioned that in the first place.  It will commercial,
  768. and will eventually be ported to the IBM and Amiga platforms.  That's why
  769. I'm so concerned about getting sued.
  770.  
  771. Mike.
  772. - -- 
  773. _____________________________________________________________________________
  774. Michael A. Kelly                                               Senior Partner
  775. mkelly@cs.uoregon.edu                                      High Risk Ventures
  776. _____________________________________________________________________________
  777.  
  778. +++++++++++++++++++++++++++
  779.  
  780. From: mxmora@unix.SRI.COM (Matt Mora)
  781. Date: 30 Oct 92 18:48:42 GMT
  782. Organization: SRI International, Menlo Park, California
  783.  
  784. In article <1992Oct30.151227.13417@magnus.acs.ohio-state.edu> nhaldar@magnus.acs.ohio-state.edu (Neil A Haldar) writes:
  785.  
  786. >Then... see if those copyrights/trademarks/patents are still in effect... I 
  787. >don't remember what the law is, but I believe a patent is 7 years and a 
  788. >copyright is 20 or so; and these of course can be extended.
  789.  
  790. US Patents are 17 years ( 20 for foreign) and copyrights depending on who owns
  791. the rights:
  792.  
  793.  
  794. Author: Life of the author plus 50 years.
  795.  
  796. Corporation: 75 years.
  797.  
  798.  
  799. >protected.  Patents/copyrights are considered a form of ownership, and the
  800. >original company could easily sue you if they still have a foot to stand on 
  801. >if they still exist.
  802.  
  803.  
  804. I believe that even if a company doesn't exist, someone or something still
  805. owns the rights. Look at the name dbx. The company is no longer but many
  806. other companies own rights to the name and its technologies.
  807.  
  808.  
  809. Matt
  810.  
  811. - -- 
  812. ___________________________________________________________
  813. Matthew Mora                |   my Mac  Matt_Mora@sri.com
  814. SRI International           |  my unix  mxmora@unix.sri.com
  815. ___________________________________________________________
  816.  
  817. +++++++++++++++++++++++++++
  818.  
  819. From: bhayden@teal.csn.org (Bruce Hayden)
  820. Date: 1 Nov 92 07:29:07 GMT
  821. Organization: Colorado SuperNet, Inc.
  822.  
  823. nhaldar@magnus.acs.ohio-state.edu (Neil A Haldar) writes:
  824.  
  825. >Next, I'd go look up on the CD-ROM database (for that's what's available here) 
  826. >what copyrights, trademarks, patants, and other legal ownership they still 
  827. >retain... this should be all inclusive, and include all of their filings 
  828. >they've made with various federal offices.
  829.  
  830. >Then... see if those copyrights/trademarks/patents are still in effect... I 
  831. >don't remember what the law is, but I believe a patent is 7 years and a 
  832. >copyright is 20 or so; and these of course can be extended.
  833.  
  834. Utility patents have a term of upto 17 years (exercising all extensions).
  835. Copyrights are now Life + 50 for individuals, or 75 years for corps, etc.
  836. Renewals for older copyrights are going out the door (are becoming automatic).
  837. Figure that if it was ever copyrighted, it probably still is. Also, note
  838. that any work created after March 1, 1988 need not be marked to be protected.
  839. Works between 1978 and 1988 may possibly still be protected w/o marking.
  840. Registration with the C/R office is actually only required if and when
  841. you are going to bring suit. So, all you will be able to see in the C/R
  842. office files is if the C/R has been assigned. Otherwise, assume that it
  843. is good.
  844.  
  845. >This should tell you LOTS about this company and how their marks are legally 
  846. >protected.  Patents/copyrights are considered a form of ownership, and the 
  847. >original company could easily sue you if they still have a foot to stand on or 
  848. >if they still exist.
  849.  
  850. Bruce E. Hayden
  851. Copyrights, Patents, etc.
  852. (303) 758-8400
  853. bhayden@csn.org
  854. bhayden@du.edu
  855.  
  856. ---------------------------
  857.  
  858. From: milligan@netcom.com (Michael Milligan)
  859. Subject: How do I change the system font?
  860. Date: 30 Oct 92 07:58:32 GMT
  861. Organization: Netcom - Online Communication Services  (408 241-9760 guest)
  862.  
  863. I'm trying to change the font used in the standard MDEF.  I wanna be able to
  864. create a popup using Geneva 9.  Do I use the Script Manager for this?  Anybody
  865. know how?
  866.  
  867. Michael
  868. - -- 
  869. - --------------------------------------------------------------------------------
  870. - -  Michael Milligan, Jr                                    milligan@netcom.com -
  871. - -                                                                              -
  872. - - "Behold, I stand at the door and knock. If anyone hears My voice and opens   -
  873. - -  the door, I will come in to him and dine with him, and he with Me."         -
  874. - -                                                              Revelation 3:20 -
  875. - --------------------------------------------------------------------------------
  876.  
  877. +++++++++++++++++++++++++++
  878.  
  879. From: engber@ils.nwu.edu (Mike Engber)
  880. Date: 30 Oct 92 13:00:53 GMT
  881. Organization: The Institute for the Learning Sciences
  882.  
  883. In article <1992Oct30.075832.18038@netcom.com> milligan@netcom.com (Michael Milligan) writes:
  884. >I'm trying to change the font used in the standard MDEF.  I wanna be able to
  885. >create a popup using Geneva 9.  Do I use the Script Manager for this?  Anybody
  886. >know how?
  887.  
  888. I'll take this opportunity to repost my soln w/ some minor bug fixes.
  889. This is also covered in the Q&A stack, but they miss some fine points.
  890.  
  891. You should be able modify this to suit your needs.
  892.  
  893. - -ME
  894.  
  895. - --- written in THINK C ---
  896.  
  897. extern  short   SysFontFam  : 0x0BA6;
  898. extern  short   SysFontSize : 0x0BA8;
  899. extern  long    LastSpExtra : 0x0B4C;
  900. extern  Ptr     CurFMInput  : 0x0988;
  901.  
  902.  
  903. long PupSelect(MenuHandle theMenu,Point popPt,short popupItem,Boolean useWFont){
  904.     short       item;
  905.     short       itemMark;
  906.     short       oldSysFont      = SysFontFam;
  907.     short       oldSysSize      = SysFontSize;
  908.     short       oldWMgrFont;
  909.     short       oldWMgrSize;
  910.     short       oldCWMgrFont;
  911.     short       oldCWMgrSize;
  912.     GrafPtr     curPort;
  913.     GrafPtr     wMgrPort;
  914.     CGrafPtr    wMgrCPort;
  915.     SysEnvRec   theWorld;
  916.  
  917.     GetPort(&curPort);
  918.     
  919.     GetItemMark(theMenu,popupItem,&itemMark);
  920.     
  921.     /* no need to muck around if the current font is already the system font */
  922.     if(curPort->txFont==SysFontFam && curPort->txSize==SysFontSize){
  923.         useWFont = false;
  924.     }
  925.     
  926.     if(useWFont){
  927.         /* hack to fix bugs caused by programs that mess up the WindowMgr port(s) */
  928.     /*  (e.g. MacWrite & Word)  - thanks to Leonard Rosenthal for soln */
  929.  
  930.         GetWMgrPort(&wMgrPort);
  931.         SetPort(wMgrPort);
  932.         oldWMgrFont = wMgrPort->txFont;
  933.         oldWMgrSize = wMgrPort->txSize;
  934.         TextFont(systemFont);
  935.         TextSize(0);
  936.         if(SysEnvirons(1,&theWorld) == noErr && theWorld.hasColorQD){
  937.             GetCWMgrPort(&wMgrCPort);
  938.             SetPort((GrafPtr)wMgrCPort);
  939.             oldCWMgrFont = wMgrCPort->txFont;
  940.             oldCWMgrSize = wMgrCPort->txSize;
  941.             TextFont(systemFont);
  942.             TextSize(0);
  943.         }else{
  944.             theWorld.hasColorQD = false;
  945.         }
  946.         SetPort(curPort);
  947.  
  948.         SysFontFam  = curPort->txFont;
  949.         SysFontSize = curPort->txSize;
  950.         LastSpExtra = -1L;
  951.         CurFMInput  = (Ptr)(-1L);
  952.         if(popupItem > 0){
  953.             SetItemMark(theMenu,popupItem,'%'); <- char should be a bullet
  954.         }
  955.     }else{
  956.         if(popupItem > 0){
  957.             CheckItem(theMenu,popupItem,true);
  958.         }
  959.     }
  960.  
  961.     item = PopUpMenuSelect(theMenu,popPt.v,popPt.h,(popupItem>0) ? popupItem : 1);
  962.     if(popupItem > 0){
  963.         SetItemMark(theMenu,popupItem,itemMark);
  964.     }
  965.  
  966.     if(useWFont){
  967.         SetPort(wMgrPort);
  968.         TextFont(oldWMgrFont);
  969.         TextSize(oldWMgrSize);
  970.         if(theWorld.hasColorQD){
  971.             SetPort((GrafPtr)wMgrCPort);
  972.             TextFont(oldCWMgrFont);
  973.             TextSize(oldCWMgrSize);
  974.         }
  975.         SetPort(curPort);
  976.  
  977.         SysFontSize = oldSysSize;
  978.         SysFontFam  = oldSysFont;
  979.         LastSpExtra = -1L;
  980.         CurFMInput  = (Ptr)-1L;
  981.     }
  982.  
  983.     return item;
  984. }
  985.  
  986. ---------------------------
  987.  
  988. End of C.S.M.P. Digest
  989. **********************
  990.